<ui:composition template="../../templates/template.xhtml"
	xmlns="http://www.w3.org/1999/xhtml"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:c="http://java.sun.com/jsp/jstl/core"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:p="http://primefaces.org/ui">

	<ui:define name="dialogs">

		<p:dialog header="Cadastrar tecnico" widgetVar="dlgAdicionaTecnico"
			resizable="false" draggable="false" modal="true">
			<h:form>
				<p:panelGrid columns="2">

					<h:outputLabel for="matricula" value="Matricula: " />
					<p:inputText id="matricula" value="#{controleBean.matricula}"
						required="true"
						requiredMessage="O campo matricula &#233; necess&#225;rio." />

					<h:outputLabel for="fullname" value="Nome Completo: " />
					<p:inputText id="fullname" value="#{controleBean.nome}"
						required="true"
						requiredMessage="O campo nome &#233; necess&#225;rio." />

					<h:outputLabel for="telephone" value="Telefone: " />
					<p:inputText id="telephone" value="#{controleBean.telefone}"
						required="true"
						requiredMessage="O campo telefone &#233; necess&#225;rio." />

					<h:outputLabel for="Email" value="E-mail: " />
					<p:inputText id="Email" value="#{controleBean.email}"
						required="true"
						requiredMessage="O campo e-mail &#233; necess&#225;rio." />

					<f:facet name="footer">
						<p:row>
							<p:column style="text-align: right">
								<p:commandButton value="Salva"
									oncomplete="dlgAdicionaTecnico.hide()"
									action="#{controleBean.cadastrarTecnico}"
									update=":formtecnicos:datatecnico, :messages"
									icon="ui-icon-check" />
							</p:column>
							<p:column>
								<p:commandButton type="reset" value="Limpa" icon="ui-icon-trash" />
							</p:column>
							<p:column>
								<p:commandButton value="Cancela"
									onclick="dlgAdicionaTecnico.hide()" icon="ui-icon-close" />
							</p:column>
						</p:row>
					</f:facet>
				</p:panelGrid>
			</h:form>
		</p:dialog>

		<p:dialog header="Controle do tecnico" widgetVar="dlgEdita"
			resizable="false" draggable="false" modal="true">
			<h:form id="display">
				<h:panelGrid columns="2">
					<h:outputText value="Nome do Tecnico" />
					<h:inputText value="#{controleBean.tecnico.nome}"
						size="#{controleBean.tecnico.nome.length()}" />

					<h:outputText value="Senha" />
					<h:inputText value="#{controleBean.tecnico.senha}"
						size="#{controleBean.tecnico.senha.length()}" />

					<h:outputText value="Tipo de usuario" />
					<p:selectOneMenu value="#{controleBean.tecnico.papel}"
						converter="papelConverter">
						<f:selectItems value="#{controleBean.papeis}" />
					</p:selectOneMenu>

					<h:outputText value="Telefone" />
					<h:inputText value="#{controleBean.tecnico.telefone}"
						size="#{controleBean.tecnico.telefone.length()}" />

					<h:outputText value="E-mail" />
					<h:inputText value="#{controleBean.tecnico.email}"
						size="#{controleBean.tecnico.email.length()}" />

					<f:facet name="footer">
						<p:commandButton value="Edita" onclick="dlgEdita.hide()"
							action="#{controleBean.updateControleTecnico}"
							update=":formtecnicos" />
						<p:commandButton value="Exclui" onclick="dlgEdita.hide()"
							action="#{controleBean.excluiControleTecnico}"
							update=":formtecnicos" />
					</f:facet>
				</h:panelGrid>
			</h:form>
		</p:dialog>
	</ui:define>

	<ui:define name="content-center">
		<h3>
			<h:outputText value="Controle de Tecnicos" />
		</h3>
		<p:separator />
		<br />
		<h:form id="formtecnicos">
			<p:dataTable var="tecnico" id="datatecnico"
				value="#{controleBean.listaTecnicos}" paginator="true"
				selection="#{controleBean.tecnico}" selectionMode="single"
				rowKey="#{tecnico.matricula}" rows="10" paginatorPosition="bottom"
				emptyMessage="N&#227;o h&#225; tecnicos.">

				<p:ajax event="rowSelect" update=":display"
					oncomplete="dlgEdita.show()" />
				<p:ajax event="rowUnselect" update=":formtecnicos" />

				<p:column headerText="Matricula" width="150"
					filterBy="#{tecnico.matricula}">
					<h:outputText value="#{tecnico.matricula}" />
				</p:column>

				<p:column headerText="Nome" width="150" filterBy="#{tecnico.nome}">
					<h:outputText value="#{tecnico.nome}" />
				</p:column>

				<p:column headerText="Tipo de Usuario" width="150"
					filterBy="#{tecnico.papel}">
					<h:outputText value="#{tecnico.papel}" />
				</p:column>

				<p:column headerText="Senha" width="150">
					<h:outputText value="#{tecnico.senha}" />
				</p:column>

				<p:column headerText="Telefone" width="150">
					<h:outputText value="#{tecnico.telefone}" />
				</p:column>

				<p:column headerText="E-mail" width="150"
					filterBy="#{tecnico.email}">
					<h:outputText value="#{tecnico.email}" />
				</p:column>

			</p:dataTable>
		</h:form>
		<p:commandButton value="Adiciona Tecnico"
			onclick="dlgAdicionaTecnico.show()" icon="ui-icon-plus" />
	</ui:define>
</ui:composition>